Deprecate and hardcode gtk-recent-files-limit
authorWilliam Jon McCann <william.jon.mccann@gmail.com>
Mon, 8 Jul 2013 20:42:44 +0000 (16:42 -0400)
committerWilliam Jon McCann <william.jon.mccann@gmail.com>
Tue, 9 Jul 2013 13:38:52 +0000 (09:38 -0400)
The GtkRecentChooser already has a property that can be used
to set this on a per widget basis and the recent manager already
has a max-age limit.

gtk/gtkfilechooserdefault.c
gtk/gtkrecentchooser.c
gtk/gtkrecentchooserdefault.c
gtk/gtksettings.c

index 33b5178d0b541826859fd49b12ae866586cdf8a7..2a957c5f81a64d571df4a2c188f4222ae7441442 100644 (file)
@@ -392,6 +392,8 @@ enum {
   GTK_TREE_MODEL_ROW,
 };
 
+#define DEFAULT_RECENT_FILES_LIMIT 50
+
 /* Icon size for if we can't get it from the theme */
 #define FALLBACK_ICON_SIZE 16
 
@@ -6635,22 +6637,6 @@ recent_idle_cleanup (gpointer data)
   g_free (load_data);
 }
 
-static gint
-get_recent_files_limit (GtkWidget *widget)
-{
-  GtkSettings *settings;
-  gint limit;
-
-  if (gtk_widget_has_screen (widget))
-    settings = gtk_settings_get_for_screen (gtk_widget_get_screen (widget));
-  else
-    settings = gtk_settings_get_default ();
-
-  g_object_get (G_OBJECT (settings), "gtk-recent-files-limit", &limit, NULL);
-
-  return limit;
-}
-
 /* Populates the file system model with the GtkRecentInfo* items in the provided list; frees the items */
 static void
 populate_model_with_recent_items (GtkFileChooserDefault *impl, GList *items)
@@ -6660,7 +6646,7 @@ populate_model_with_recent_items (GtkFileChooserDefault *impl, GList *items)
   GList *l;
   int n;
 
-  limit = get_recent_files_limit (GTK_WIDGET (impl));
+  limit = DEFAULT_RECENT_FILES_LIMIT;
 
   n = 0;
 
index c5e151fb316eb69ef374922df37320c1a8e38063..32f409d8861729934fb14fac2119ec7a23513740 100644 (file)
@@ -220,10 +220,7 @@ gtk_recent_chooser_default_init (GtkRecentChooserInterface *iface)
    * GtkRecentChooser:limit:
    *
    * The maximum number of recently used resources to be displayed,
-   * or -1 to display all items. By default, the
-   * GtkSetting:gtk-recent-files-limit setting is respected: you can
-   * override that limit on a particular instance of #GtkRecentChooser
-   * by setting this property.
+   * or -1 to display all items.
    *
    * Since: 2.10
    */
@@ -233,7 +230,7 @@ gtk_recent_chooser_default_init (GtkRecentChooserInterface *iface)
                                                         P_("The maximum number of items to be displayed"),
                                                         -1,
                                                         G_MAXINT,
-                                                        -1,
+                                                        50,
                                                         GTK_PARAM_READWRITE));
   /**
    * GtkRecentChooser:sort-type:
index c1d15d2feb69659765fd705c95e17310b1fab215..85a5bcd82eaaf80ac516e67a39d6b01b85ed413e 100644 (file)
@@ -167,6 +167,8 @@ enum {
 #define NUM_CHARS 40
 #define NUM_LINES 9
 
+#define DEFAULT_RECENT_FILES_LIMIT 50
+
 \f
 
 /* GObject */
@@ -218,7 +220,6 @@ static void set_current_filter        (GtkRecentChooserDefault *impl,
 static GtkIconTheme *get_icon_theme_for_widget (GtkWidget   *widget);
 static gint          get_icon_size_for_widget  (GtkWidget   *widget,
                                                GtkIconSize  icon_size);
-static gint          get_recent_files_limit    (GtkWidget   *widget);
 
 static void reload_recent_items (GtkRecentChooserDefault *impl);
 static void chooser_set_model   (GtkRecentChooserDefault *impl);
@@ -824,7 +825,7 @@ reload_recent_items (GtkRecentChooserDefault *impl)
                                              GTK_ICON_SIZE_BUTTON);
 
   if (!impl->priv->limit_set)
-    impl->priv->limit = get_recent_files_limit (widget);
+    impl->priv->limit = DEFAULT_RECENT_FILES_LIMIT;
 
   set_busy_cursor (impl, TRUE);
 
@@ -1333,22 +1334,6 @@ get_icon_size_for_widget (GtkWidget   *widget,
   return FALLBACK_ICON_SIZE;
 }
 
-static gint
-get_recent_files_limit (GtkWidget *widget)
-{
-  GtkSettings *settings;
-  gint limit;
-
-  if (gtk_widget_has_screen (widget))
-    settings = gtk_settings_get_for_screen (gtk_widget_get_screen (widget));
-  else
-    settings = gtk_settings_get_default ();
-  
-  g_object_get (G_OBJECT (settings), "gtk-recent-files-limit", &limit, NULL);
-
-  return limit;
-}
-
 static void
 recent_manager_changed_cb (GtkRecentManager *manager,
                           gpointer          user_data)
index 462792657810ad269825ffbcf3fa157893904d0c..2c84ba3d952c57ff5f80e7422330f56d7f6894b9 100644 (file)
@@ -1022,6 +1022,8 @@ gtk_settings_class_init (GtkSettingsClass *class)
    * -1 means every recently used file stored.
    *
    * Since: 2.12
+   *
+   * Deprecated: 3.10: This setting is ignored
    */
   result = settings_install_property_parser (class,
                                              g_param_spec_int ("gtk-recent-files-limit",
@@ -1029,7 +1031,7 @@ gtk_settings_class_init (GtkSettingsClass *class)
                                                                P_("Number of recently used files"),
                                                                -1, G_MAXINT,
                                                                50,
-                                                               GTK_PARAM_READWRITE),
+                                                               GTK_PARAM_READWRITE | G_PARAM_DEPRECATED),
                                              NULL);
   g_assert (result == PROP_RECENT_FILES_LIMIT);